/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.3.0                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "system";
    object      setFieldsDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

fields (alpha.c4);
nBufferLayers 1;

defaultFieldValues
(
    volScalarFieldValue alpha.c4 0
);


regions
(
    sphereToCell // Use cylinder for 3D
    {
        refineInternal yes;
        level 5;

        centre (0 0 0);
        radius 0.1;

        backup
        {
            centre (0 0 0);
            radius 1;
        }

        fieldValues
        (
            volScalarFieldValue alpha.c4    1
        );
    }
    boxToCell // Use cylinder for 3D
    {
        boxes
        (
            (0.9 -1 -1) (1.1 1 -0.5)
            (0.9 -1 0.5) (1.1 1 1)

            (1.9 -1 -1) (2.1 1 -0.5)
            (1.9 -1 0.5) (2.1 1 1)

            (2.9 -1 -1) (3.1 1 -0.5)
            (2.9 -1 0.5) (3.1 1 1)
        );
        refineCells yes;
        level 2;
        cellSets
        (
            {
                selectionMode internal;
                name wallCells;
                action new;
            }
            {
                selectionMode internal;
                name internalCells;
                action invert;
                source wallCells;
            }
        );
    }
    boxToPoint // Use cylinder for 3D
    {
        boxes
        (
            (0.99 -1 -0.5) (1.01 1 0.5)
            (1.99 -1 -0.5) (2.01 1 0.5)
            (2.99 -1 -0.5) (3.01 1 0.5)
        );
        refineFaces yes;
        level 2;
        faceZones
        (
            {
                selectionMode internal;
                name windowFaces;
                action new;
            }
        );
    }
    boxToCell
    {
        boxes
        (
            (4.5 -2 -0.5) (10 1 0.5)
        );
        faceSets
        (
            {
                selectionMode boundary;
                patches (walls);
                name outletFaces;
                action new;
            }
        );
    }
);


// ************************************************************************* //
